﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class Mantenimiento_Proveedores : System.Web.UI.Page
{

    Pais pais = new Pais();
    Proveedor proveedor = new Proveedor();

    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {
            listarPaises();
            listarProveedores();
        }
    }

    public void listarPaises()
    {
        ddlPais.DataSource = pais.listarPaises();
        ddlPais.DataTextField = "nombre";
        ddlPais.DataValueField = "codigo";
        ddlPais.DataBind();
    }

    public void limpiarControles()
    {
        txtCodigo.Text = string.Empty;
        txtRazonSocial.Text = string.Empty;
        txtRuc.Text = string.Empty;
        txtDireccion.Text = string.Empty;
        txtTelefono.Text = string.Empty;
        ddlPais.SelectedIndex = 0;
    }

    public void listarProveedores()
    {
        GridView1.DataSource = proveedor.listarTodos();
        GridView1.DataBind();
    }

    protected void btnAgregar_Click(object sender, EventArgs e)
    {
        Proveedor prov = new Proveedor();
        prov.codigo = Convert.ToInt32(txtCodigo.Text);
        prov.razonSocial = txtRazonSocial.Text;
        prov.ruc = txtRuc.Text;
        prov.telefono = txtTelefono.Text;
        prov.direccion = txtDireccion.Text;
        prov.pais = Convert.ToInt32(ddlPais.SelectedValue);

        proveedor.agregar(prov);
        listarProveedores();
        limpiarControles();
    }

    protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
    {
        GridViewRow fila = GridView1.SelectedRow;
        txtCodigo.Text = fila.Cells[1].Text;
        txtRazonSocial.Text = fila.Cells[2].Text;
        txtRuc.Text = fila.Cells[3].Text;
        txtDireccion.Text = fila.Cells[4].Text;
        txtTelefono.Text = fila.Cells[5].Text;
        ddlPais.SelectedValue = ddlPais.Items.FindByText(fila.Cells[6].Text).Value;
    }

    protected void btnActualizar_Click(object sender, EventArgs e)
    {
        Proveedor prov = new Proveedor();
        prov.codigo = Convert.ToInt32(txtCodigo.Text);
        prov.razonSocial = txtRazonSocial.Text;
        prov.ruc = txtRuc.Text;
        prov.telefono = txtTelefono.Text;
        prov.direccion = txtDireccion.Text;
        prov.pais = Convert.ToInt32(ddlPais.SelectedValue);

        proveedor.actualizar(prov);
        listarProveedores();
        limpiarControles();
    }

    protected void btnEliminar_Click(object sender, EventArgs e)
    {
        proveedor.eliminar(Convert.ToInt32(txtCodigo.Text));
        listarProveedores();
        limpiarControles();
    }
}